package com.ict.ais.abnormal.service.dao;

import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import com.ict.ais.abnormal.facade.model.AISOffLine;
import com.ict.ais.abnormal.facade.model.AbnormalSet;
import com.ict.ais.abnormal.facade.model.AnomalyGrids;
import com.ict.ais.abnormal.facade.model.AnomalyShips;
import com.ict.ais.abnormal.facade.model.ImTarget;
import com.ict.ais.abnormal.facade.model.ZoneEntry;
import com.ict.ais.abnormal.facade.model.ZoneEntryCache;

import java.util.List;

/**
 * Created by chenlong on 2016/6/21.
 */
@Repository
public interface IAbnormalDao {
    void updateAbnormalSet(@Param("abnormalSet") AbnormalSet abnormalSet);
    AbnormalSet getAbnormalSet();

    List<ZoneEntry> getZoneEntry(@Param("tim") int tim);
    List<ZoneEntry> getZoneEntryPro(@Param("tim") int tim,@Param("limit") int limit);

    List<ZoneEntryCache> getZoneEntryCache(@Param("tim") int tim,@Param("limit") int limit);

    List<AnomalyShips> getAnomalyShips(@Param("tim") int tim);
    List<AnomalyShips> getAnomalyShipsPro(@Param("tim") int tim,@Param("limit") int limit);

    List<AnomalyShips> getAnomalyJS(@Param("tim") int tim);
    List<AnomalyShips> getAnomalyJSLimit(@Param("tim") int tim,@Param("limit") int limit);

    List<AnomalyShips> getAnomalyZF(@Param("tim") int tim);
    List<AnomalyShips> getAnomalyZFLimit(@Param("tim") int tim,@Param("limit") int limit);

    List<AnomalyGrids> getAnomalyGrids(@Param("tim") int tim);
    List<AnomalyGrids> getAnomalyGridsPro(@Param("tim") int tim,@Param("limit") int limit);

    List<AISOffLine> getAISOffLine(@Param("tim") int tim);
    List<AISOffLine> getAISOffLinePro(@Param("tim") int tim,@Param("limit") int limit);

    List<ImTarget> getImTargetWithoutLimit(@Param("tim") int tim);
    List<ImTarget> getImTargetWithLimit(@Param("tim") int tim,@Param("limit") int limit);
}
